// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 2007-9-15 18:54:17

// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   pu.java

package com.zelix;

import java.io.*;
import java.util.HashSet;
import java.util.Vector;

// Referenced classes of package com.zelix:
//            r6, td, sn, kt, 
//            qu, lx, ux, qy, 
//            jb, au, lm

public class pu extends r6
{

    private static String z[];

    pu(kt kt1, jb jb, qy qy1, PrintWriter printwriter)
        throws IOException
    {
        int j;
        int l;
        l = kt.i;
        super(kt1);
        int i = jb.readUnsignedShort();
        qy1.b(kt.g.a(i), this);
        super.k = jb.readUnsignedShort();
        super.l = new qu[super.k];
        j = 0;
        if(l == 0) goto _L2; else goto _L1
_L1:
        super.l[j] = new qu(this, jb, qy1, printwriter);
        if(!super.l[j].s())
            super.o = false;
        j++;
_L2:
        if(j < super.k) goto _L1; else goto _L3
_L3:
        int k;
        super.m = jb.readUnsignedShort();
        super.n = new qu[super.m];
        k = 0;
        if(l == 0) goto _L5; else goto _L4
_L4:
        super.n[k] = new qu(this, jb, qy1, printwriter);
        if(!super.n[k].s())
            super.o = false;
        k++;
_L5:
        if(k >= super.m)
            return;
        if(true) goto _L4; else goto _L6
_L6:
    }

    public pu(au au, td td1, sn sn1, lm lm, Vector vector)
    {
        super(au);
        super.j = td1;
        super.l = qu.a(this, sn1.f(), lm, vector, true);
        super.k = super.l.length;
        super.n = qu.a(this, sn1.c(), lm, vector, false);
        super.m = super.n.length;
        super.o = true;
    }

    int r()
    {
        int i;
        int j;
        int l;
        l = kt.i;
        i = 6;
        j = 0;
        if(l == 0) goto _L2; else goto _L1
_L1:
        i += super.l[j].q();
        j++;
_L2:
        if(j < super.k) goto _L1; else goto _L3
_L3:
        int k = 0;
        if(l == 0) goto _L5; else goto _L4
_L4:
        i += super.n[k].q();
        k++;
_L5:
        if(k >= super.m)
            return i;
        if(true) goto _L4; else goto _L6
_L6:
    }

    public String a()
    {
        return z[1];
    }

    void b(HashSet hashset)
    {
        int i;
        int k;
        k = kt.i;
        i = 0;
        if(k == 0) goto _L2; else goto _L1
_L1:
        super.l[i].b(hashset);
        i++;
_L2:
        if(i < super.k) goto _L1; else goto _L3
_L3:
        int j = 0;
        if(k == 0) goto _L5; else goto _L4
_L4:
        super.n[j].b(hashset);
        j++;
_L5:
        if(j >= super.m)
            return;
        if(true) goto _L4; else goto _L6
_L6:
    }

    protected void a(DataOutputStream dataoutputstream)
        throws IOException
    {
        int i;
        int k;
        k = kt.i;
        lx.b(super.o, z[0] + l());
        dataoutputstream.writeShort(super.j.q());
        dataoutputstream.writeShort(super.k);
        i = 0;
        if(k == 0) goto _L2; else goto _L1
_L1:
        super.l[i].a(dataoutputstream);
        i++;
_L2:
        if(i < super.k) goto _L1; else goto _L3
_L3:
        int j;
        dataoutputstream.writeShort(super.m);
        j = 0;
        if(k == 0) goto _L5; else goto _L4
_L4:
        super.n[j].a(dataoutputstream);
        j++;
_L5:
        if(j >= super.m)
            return;
        if(true) goto _L4; else goto _L6
_L6:
    }

    private static String z(char[] chs) {
        for (int i = 0; i < chs.length; i++) {
            byte key = 0;
            switch (i % 5) {
                case 0:
                    key = 0x37;
                    break;
                case 1:
                    key = 102;
                    break;
                case 2:
                    key = 78;
                    break;
                case 3:
                    key = 10;
                    break;
                default:
                    key = 119;
                    break;
            }
            chs[i] ^= key;
        }
        return new String(chs).intern();
    }

    static 
    {
        String as[];
        as = new String[2];
        as[0] = z("~\b8k\033^\002nY\003V\005%G\026GF\013d\003E\037nc\031\027".toCharArray());
        as[1] = z("d\022/i\034z\007>".toCharArray());
        z = as;

    }
}